% coding: utf-8

\section{Enunciado del trabajo pr\'actico}
\begin{enumerate}
\item Introducci\'on

Continuando con los lineamientos que nos propusimos, en esta ocasión utilizaremos los servicios de la capa de transporte para extender el conocimiento de la red en la que nos encontramos. En el taller anterior, hemos conseguido (en el mejor de los casos) entender los profusos elementos que nos permitirían iluminar los hosts conectados en nuestro segmento de red y en una red IP. En esta oportunidad, en cambio, nos abocaremos a descubrir qué tiene para ofrecernos un host en particular, analizando el estado de los puertos y los servicios disponibles.

\item Entrega
\begin{itemize}
\item Fecha de entrega: 27.06.2012
\item El código deberá haber sido enviado por correo para esa fecha con el siguiente formato:

to: tdc$-$doc at dc uba ar

subject: $[$tdc$-$transporte$]$ lo$-$que$-$quieran$-$poner

body: integrantes y mails

attachment: tp$\_$transporte.py
\item Se deberá entregar el informe impreso y abrochado con la lista de integrantes y vuestros correos electrónicos
(los mismos que fueran enviados por mail).

\end{itemize}

\item Enunciado

A partir de los conceptos explicados durante la clase de taller1, cada grupo deberá realizar las consignas detalladas más abajo.
En esta ocasión, tomando como legítimo el experto uso que ha dado el alumnado a las sendas consolas de Python y de Scapy, obviaremos el esqueleto y aceptaremos código Python$-$Scapy en todas sus variedades, aunque apropiadamente documentado y (opcionalmente) provisto de casos de test..

\subitem Consignas

\begin{enumerate}
\item Primera parte: port scanning
	\begin{itemize}
		\item Implementar SYN scan y Connect scan utilizando lo explicado en clase.
		\item ¿Cuál es la complejidad algorítmica de estos métodos? Comparar tiempo contra cantidad de operaciones.
		\item Discutir sobre cuán inocuos resultan estos métodos.
		\item ¿Es posible tomar conciencia de que una detección de puertos está siendo realizada?
		\item ¿En qué escenarios son efectivos? ¿En cuáles carecen de utilidad?
		\item Considerar el siguiente escenario: se desconoce la existencia de un firewall intermedio. ¿Qué se podría determinar con esta técnica?
	\end{itemize}

\item Segunda parte: service discovery

Definir e implementar una estrategia para descubrir qué servicio corresponde a un puerto abierto. ¿En qué casos es efectiva?

\item Tercera parte: detección de versión

La técnica de banner grabbing consiste, como hemos explicado, en realizar una interacción preestablecida con un servicio en donde éste envía información sobre su implementación (i.e, número de versión, sistema operativo, etc.).
Documentar al menos tres servicios susceptibles a la técnica de banner grabbing y dar una implementación para la captura de dicho banner.

\end{enumerate}
\end{enumerate}
